package Before826.jihe;
import java.util.*;


public class test  {
    public static void main(String[] args) {

                TreeSet set = new TreeSet( new StudentComparator());////创建TreeSet时需要定义比较器
                //添加元素
                set.add( new Student(1,"aaa"));
                set.add( new Student(3,"bbb"));
                set.add( new Student(2,"ccc"));
                set.add( new Student(1,"aaa"));

//                从程序的角度来考虑，两个段智兴不是同一个对象，都有自己的存储空间，所以哈希值也不一样。
        //用迭代器遍历数组set
//              Iterator it = set.iterator();
//              while (it.hasNext()) {
//                  Student s = (Student) it.next();
//                  System.out.println(s);
//              }
        //增强for循环遍历set
//                for (Object o : set) {
//                    System.out.println(o);
//                }
        // 集合ArrayList的增删改查
//        ArrayList<Student> list = new ArrayList<>();
//        //向List集合中添加元素
//                list.add(new Student(1,"aaa"));
//                list.add(new Student(2,"bbb"));
//                list.add(new Student(3,"ccc"));
//                list.add(new Student(4,"ddd"));
//                //使用增强for循环遍历输出List集合
//                for(Student stu : list){
//                    System.out.println(stu);
//                }
//        System.out.println("**********");
//                //删除List中的数据
//                list.remove(1);
//                for(Student stu : list){
//                    System.out.println(stu);
//                }
//        System.out.println("***********");
//                //改变List集合中的数据
//                list.set(1,new Student(5,"eee"));
//                list.sort(Student::compareTo);
//                for(Student stu : list){
//                    System.out.println(stu);
//                }
//        System.out.println("*********");
//                //List数组排序
//                list.sort(new StudentComparator());
//                for(Student stu : list){
//                    System.out.println(stu);
//                }

/*集合Map的增删改查,
完成Map的循环遍历,key遍历,value遍历
 */
        //新建Map添加数据
//        Map<Integer,Student> map = new HashMap<>();
//        map.put( 1,new Student(1,"aaa"));
//        map.put( 2, new Student(2,"bbb"));
//        map.put( 3, new Student(3,"ccc"));
//        //Map的key遍历:
//        for (Integer key : map.keySet()) {
//            System.out.println(map.get(key));
//        }
//        System.out.println("*******");
//        //Map的value遍历
//        for(Student value :map.values()){
//            System.out.println(value);
//        }
//        System.out.println("********");
//        //删除数据
//       map.remove(1);
//        for(Student value :map.values()){
//            System.out.println(value);
//        }
//        System.out.println("****");
//        //Map修改数据
//        map.put(2,new Student(2,null));
//        map.put(null ,new  Student(4,null));
//        map.put(1, new Student(4,"fff"));
//        for (Student value :map.values()){
//            System.out.println(value);
//        }
        

    }
}
